﻿#region Using

using System;
using System.Windows.Forms;

#endregion

namespace Dictionary {
    public partial class ChangeWordForm : Form {
        private readonly MainForm _mainForm;

        public ChangeWordForm(string word, MainForm mainForm) {
            InitializeComponent();
            textBox1.Text = word;
            _mainForm = mainForm;
        }

        #region Events

        private void Button1Click(object sender, EventArgs e) {
            int result = Controller.Controller.UpdateWord(textBox1.Text, textBox2.Text);
            // Update list
            switch (result) {
                case -1:
                    MessageBox.Show(@"Từ này không tồn tại trong từ điển", @"Từ không tồn tại trong từ điển",
                                    MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    break;
                case 0: {
                    MessageBox.Show(@"Đã thay đổi!", @"OK", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    // update the lWordList
                    int i = _mainForm.lWordList.SelectedIndex;
                    _mainForm.lWordList.SelectedIndex =
                        _mainForm.lWordList.SelectedIndex > _mainForm.lWordList.Items.Count
                            ? i - 1
                            : i + 1;
                    _mainForm.Words.RemoveAt(i);
                    _mainForm.Words.Add(textBox2.Text);
                    _mainForm.Refresh();
                    _mainForm.lWordList.SetSelected(_mainForm.lWordList.FindString(textBox2.Text), true);
                }
                    break;
                case 1:
                    MessageBox.Show(@"Bạn đã nhập từ trùng!", @"Trùng", MessageBoxButtons.OK,
                                    MessageBoxIcon.Warning);
                    break;
            }
        }

        #endregion
    }
}